package Dat05;

public class Test04 {
    /**
     * 简要描述Serializable接口和transient关键字
     * @author Admin
     *
     */
    public static void main(String[] args) {
        /**
         * Serializable：用于启动对象的序列化功能，可以强制让指定类具备序列化功能，
         * 该接口中没有成员，这是一个标记接口。
         * 这个标记接口用于给序列化类提供UID。
         * 这个uid是依据类中的成员的数字签名进行运行获取的。
         * 如果不需要自动获取一个uid，
         * 可以在类中，手动指定一个名称为serialVersionUID id号。
         * 依据编译器的不同，或者对信息的高度敏感性。最好每一个序
         * 列化的类都进行手动显示的UID的指定。
         *
         * 1、transient关键字只能修饰变量，而不能修饰方法和类。
         * 注意，本地变量是不能被transient关键字修饰的。
         * 2、被transient关键字修饰的变量不再能被序列化，
         * 一个静态变量不管是否被transient修饰，均不能被序列化。
         * 3、一旦变量被transient修饰，变量将不再是对象持久化的一部分，
         * 该变量内容在序列化后无法获得访问。也可以
         * 认为在将持久化的对象反序列化后，
         * 被transient修饰的变量将按照普通类成员变量一样被初始化。
         */
    }
}
